package com.yida.wy.vote.mapper;


import com.yida.wy.vote.domain.WyVoteHouse;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

/**
 * 投票房屋Mapper接口
 *
 * @author lqq
 * @date 2023-03-22
 */
public interface WyVoteHouseMapper {
	/**
	 * 查询投票房屋
	 *
	 * @param voteHouseId 投票房屋主键
	 * @return 投票房屋
	 */
	public WyVoteHouse selectVoteHouseByVoteHouseId(Long voteHouseId);

	/**
	 * 查询投票房屋列表
	 *
	 * @param voteHouse 投票房屋
	 * @return 投票房屋集合
	 */
	public List<WyVoteHouse> selectVoteHouseList(WyVoteHouse voteHouse);

	/**
	 * 新增投票房屋
	 *
	 * @param voteHouse 投票房屋
	 * @return 结果
	 */
	public int insertVoteHouse(WyVoteHouse voteHouse);

	/**
	 * 新增投票房屋
	 *
	 * @param voteHouses 投票房屋
	 * @return 结果
	 */
	public int insertBatchVoteHouse(@Param("voteHouses") List<WyVoteHouse> voteHouses);

	/**
	 * 修改投票房屋
	 *
	 * @param voteHouse 投票房屋
	 * @return 结果
	 */
	public int updateVoteHouse(WyVoteHouse voteHouse);

	/**
	 * 修改投票房屋
	 *
	 * @param voteHouseIds 投票房屋主键
	 * @param selectFlag   是否选择
	 * @param updateBy     修改人
	 * @param updateTime   修改时间
	 * @return 结果
	 */
	public int updateBatchVoteHouseSelectFlag(@Param("voteHouseIds") Long[] voteHouseIds, @Param("selectFlag") String selectFlag, @Param("updateTime") Date updateTime, @Param("updateBy") String updateBy);

	/**
	 * 删除投票房屋
	 *
	 * @param voteHouseId 投票房屋主键
	 * @return 结果
	 */
	public int deleteVoteHouseByVoteHouseId(Long voteHouseId);

	/**
	 * 批量删除投票房屋
	 *
	 * @param voteHouseIds 需要删除的数据主键集合
	 * @return 结果
	 */
	public int deleteVoteHouseByVoteHouseIds(Long[] voteHouseIds);
}
